//package com.bytecodezz.app.sketch.common.base
//
//import com.bytecodezz.app.sketch.common.base.BaseUIViewModel
//
///**
// * @author: bytecodezz
// * @version: 1.0
// * @time: 2021/8/18 18:09
// * @package: com.bytecodezz.app.common.commonbase.base
// *
// * @description:
// *
// */
//abstract class BaseRepoUIViewModel<T : BaseRepository> : BaseUIViewModel() {
//
//    private fun handlerRepositoryError(cause: Throwable?) {
//        //异常提示
//        if (cause is APIException) {
//            //业务出现异常
//            when (cause.code) {
//                806, 807 -> {
//                    //不再处理"用户不存在"的异常
//                }
//                else -> {
//                    cause.showHintMessage?.let {
//                        showToast(it)
//                    }
//                }
//            }
//        } else {
//            showToast("网络错误")
//        }
//
//    }
//
//    //存储对象，用于获取网络内容或者数据库内容等
//    val repository: T by lazy {
//        repositoryProvider().apply {
//            handlerRepositoryError = ::handlerRepositoryError
//            startBlock = ::onFlowStartBack
//            endBlock = ::onFlowEndBack
//        }
//    }
//
//    abstract fun repositoryProvider(): T
//
//    private fun onFlowStartBack() {
//        isShowProgress.value = true
//    }
//
//
//    private fun onFlowEndBack() {
//        isShowProgress.value = false
//    }
//}